package basics.day18.ArrayList.CollectionDemo;

import java.util.ArrayList;
import java.util.Collection;

public class Test {
    public static void main(String[] args) {
        // fun_1();
        // fun_2();
        // fun_3();
        fun_4();
    }

    /*
     * clear()方法：将集合中的所有对象清楚，但是集合依然存在的
     * remove()方法：将某个对象移除，移除索引值最小的那个
     * */
    public static void fun_4() {
        Collection<String> c = new ArrayList<String>();
        c.add("张喜");
        c.add("喜");
        c.add("喜子");
        c.add("喜");
        c.add("嘻嘻");
        System.out.println(c);
        // 移除成功返回true  移除失败返回 false
        boolean b = c.remove("嘻嘻");
        // 移除第一个“喜”
        c.remove("喜");
        System.out.println(c);
        // 清除
        c.clear();
        System.out.println(c);
    }

    /*
     * toArray 方法：
     *     将集合转成数组，切记，ArrayList 中存放的是对象，所以将集合转成数组 数组里面是Object
     * */
    public static void fun_3() {
        Collection<String> collection = new ArrayList<String>();
        collection.add("14");
        collection.add("12");
        collection.add("13");
        collection.add("14");
        collection.add("15");
        // 数组中存放的是Object 而不是String
        Object[] arr = collection.toArray();
        for (int i = 0; i < arr.length; i++) {
            System.out.println(arr[i]);
        }

    }

    public static void fun_2() {
        Collection<String> collection = new ArrayList<String>();
        collection.add("13");
        collection.add("12");
        collection.add("13");
        collection.add("14");
        collection.add("15");
        boolean b = collection.contains("13");
        boolean b1 = collection.contains(13);
        System.out.println(b); // true
        System.out.println(b1); // false

    }

    /*
     * ArrayList 继承顶级接口是 Collection
     * Collection 接口有个放大add 咱们通过 多肽方式创建Collection 查看add用法
     * 这个add方法 被ArrayList重写了
     * */
    public static void fun_1() {
        Collection<String> collection = new ArrayList<String>();
        collection.add("11");
        collection.add("12");
        collection.add("13");
        collection.add("14");
        collection.add("15");
        System.out.println(collection);
    }
}
